/*
 * @Author: wangshuixin 2412658453@qq.com
 * @Date: 2024-11-20 09:40:08
 * @LastEditors: wangshuixin 2412658453@qq.com
 * @LastEditTime: 2024-12-09 08:44:16
 * @FilePath: \sr_system_manager_ui\src\types\index.ts
 * @Description: 公共请求类型
 */
/**
 * 分页返回数据，统一包装类型
*/
export interface PaginationQueryUniteRespDTO<T> {
  content: T[] // 列表数据
  number: number // 当前分页页码
  numberOfElements: number // 返回数据个数
  size: number // 当前分页条数
  totalElements: number // 数据总条数
  totalPages: number // 总页数
}

// 应用状态改变 / 创建
export interface AppStateChangeRespDTO {
  appId: string //  应用ID
  isSuccess: boolean //  是否成功
  [property: string]: any
}

/**
 * 常用字段 >> 一般为创建、更新信息
*/
export interface CommonFieldsUniteRespDTO {
  appId?: string // 应用唯一标识
  createdBy?: string // 创建人id
  createdByName?: string // 创建人名称
  createdTime?: string // 创建时间
  updatedBy?: string // 更新人id
  updatedByName?: string // 更新人名称
  updatedTime?: string // 更新时间
  [property: string]: any
}

/**
* 附件对象
*/
export interface AttachmentFileInfoDTO {
  /**
   * 应用ID
   */
  appId?: string;
  contentType?: string;
  /**
   * 创建人id
   */
  createdBy?: string;
  /**
   * 创建时间
   */
  createdTime?: Date;
  fileKey?: string;
  /**
   * 主键id
   */
  id?: string;
  name?: string;
  /**
   * 备注
   */
  remark?: string;
  size?: number;
  /**
   * 文件后缀
   */
  suffix?: string;
  type?: number;
  /**
   * 更新人id
   */
  updatedBy?: number;
  /**
   * 更新时间
   */
  updatedTime?: Date;
  /**
   * 访问地址
   */
  url?: string;
  [property: string]: any;
}

/**
 * 学院、部门对象
 */
export interface DepartmentListVO {
  /**
   * 部门id
   */
  departmentId?: number;
  /**
   * 部门名称
   */
  departmentName?: string;
  [property: string]: any;
}